Virtual machine control program, virtual machine control method, virtual machine control apparatus, and cloud computing system

ABSTRACT

A non-transitory computer readable medium that stores therein a virtual machine management program for causing a computer to execute a process having, suspending a virtual machine, when an access to the virtual machine does not occur for a first time; resuming and, after a second time elapses, suspending the virtual machine being suspended, even the access to the virtual machine does not occur, so as to cause the virtual machine to perform a refreshing process; and resuming the virtual machine being suspended, when the access to the virtual machine occurs.

CROSS-REFERENCE TO RELATED APPLICATION

This application is based upon and claims the benefit of priority of theprior Japanese Patent Application No. 2013-069214, filed on Mar. 28,2013, the entire contents of which are incorporated herein by reference.

FIELD

The present invention relates to a virtual machine control program, avirtual machine control method, a virtual machine control apparatus, anda cloud computing system.

BACKGROUND

A cloud computing service virtualizes, on the basis of a servicecontract with a cloud user of the cloud computing service, a hardwaregroup including a plurality of servers in a server facility and providesthe cloud user with infrastructures itself such as virtual machines andnetworks of the hardware group as a service provided through a network.

As types of charging of the cloud computing service, in general, thereare monthly charging and meter rate charging. The monthly charging is acontract form for billing a fixed monthly rate to the cloud user. Thecloud user is charged with a fixed rate irrespective of whether thecloud user operated the virtual machine. For example, when the clouduser provides a Web service with the virtual machine in the serverfacility, since it is unknown when the virtual machine is accessed, thecloud user needs to always keep a server of the virtual machine in astarted state. Therefore, the cloud user selects the monthly charging.

On the other hand, in the meter rate charging, the cloud user is chargedwith a rate according to time during which the cloud user operates thevirtual machine. The cloud user operates the server of the virtualmachine when the server is necessary, for example, when the cloud useroperates the virtual machine only to perform monthly processing in themonth end, and the cloud user stop the server when the server isunnecessary. In this case, the cloud user selects the meter ratecharging.

The cloud computing service is described in Japanese Patent ApplicationLaid-open No. 2010-224914.

SUMMARY

However, even when a frequency of use of a provided Web service by aclient is low and therefore a frequency of use of a server of a virtualmachine is low, when it is unpredictable when an access occurs as in theWeb service explained above, it is necessary to always keep the serverstarted. Therefore, the cloud user has to select the contract of themonthly charging. On the other hand, a cloud computing service providerhas a duty to always keep the server in a state in which the server canprovide the cloud user having the monthly charging contract with the Webservice. Therefore, the monthly charging contract sometimes preventsimprovement of efficiency of use of the hardware in the server facility.

One aspect of disclosed embodiments is a non-transitory computerreadable medium that stores therein a virtual machine management programfor causing a computer to execute a process comprising:

suspending a virtual machine, when an access to the virtual machine doesnot occur for a first time;

resuming and, after a second time elapses, suspending the virtualmachine being suspended, even the access to the virtual machine does notoccur, so as to cause the virtual machine to perform a refreshingprocess; and

resuming the virtual machine being suspended, when the access to thevirtual machine occurs.

The object and advantages of the invention will be realized and attainedby means of the elements and combinations particularly pointed out inthe claims.

It is to be understood that both the foregoing general description andthe following detailed description are exemplary and explanatory and arenot restrictive of the invention.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a diagram depicting the overall configuration of a cloudcomputing system in an embodiment.

FIG. 2 is a diagram depicting an example of functions of thevirtualization software when a virtual machine executes thevirtualization software.

FIG. 3 is a diagram depicting a configuration example of the managementserver.

FIG. 4 is a diagram depicting the operation during resume of the Webserver by the virtual machine.

FIG. 5 is a diagram depicting another example of the operation duringthe resume of the Web server by the virtual machine.

FIG. 6 is a diagram depicting a delay of resume of the virtual machine.

FIG. 7 is a flowchart of a virtual machine management program in thisembodiment.

FIG. 8 is a diagram depicting an operation performed in entering into anautomatic meter rate charging contract in this embodiment.

FIG. 9 is a flowchart in entering into the automatic meter rate chargingcontract in this embodiment.

FIG. 10 is a diagram depicting the access monitoring and the suspendcontrol by the management server.

FIG. 11 is a diagram depicting resume control during access occurrenceby the management server.

FIG. 12 is a flowchart of the resume control during access occurrence bythe management server.

FIG. 13 is a diagram depicting operation information acquisition fromthe virtual machine by the management server.

FIG. 14 is a more specific flowchart of the action informationacquisition by the management server.

FIG. 15 is a diagram depicting a periodic refresh operation of thesuspended virtual machine.

FIG. 16 is a flowchart of control of the refresh operation of thevirtual machine by the management server.

FIG. 17 is a diagram depicting a normal resume operation.

FIG. 18 is a diagram depicting the resume operation of the virtualmachine charged by the automatic meter rate charging in this embodiment.

FIG. 19 is a diagram depicting an example of the virtual machinemanagement table.

FIG. 20 is a diagram depicting an example of the virtual machineoperation information table.

FIG. 21 is diagram depicting a hardware configuration of the cloudcomputing service portal site, the management server, and the hardwaregroup in the server facility.

DESCRIPTION OF EMBODIMENTS

Configuration of a Cloud Computing System

FIG. 1 is a diagram depicting the overall configuration of a cloudcomputing system in an embodiment. A hardware group 5, a cloud computingservice portal site 2, and a management server 3 are provided in aserver facility 9. A cloud user terminal 1 and a client terminal of aclient who uses a service provided by the cloud user are connectable tothe server facility 9 via a network 7 such as the Internet or anintranet.

The hardware group 5 includes a plurality of servers. Each of theservers includes a CPU, memory (DRAM), a large capacity memory such as ahard disk (HDD), and a network. Resources of the hardware group 5 areallocated to a plurality of virtual machines VM. The cloud computingservice portal site 2 and the management server 3 may be generated by,for example, the virtual machines VM.

A cloud computing service provided to the cloud user by the cloudcomputing system is a service for providing, through the network 7,bases for generating and operating a computer system, that is,infrastructures such as virtual machines and a network.

The cloud user accesses the cloud computing service portal site 2 from aterminal 1 of the cloud user, selects specifications necessary for thevirtual machine VM such as CPU clock frequency, memory capacity (GB),hard disk capacity (MB/sec. IOPS), and network bandwidth (Gbps), selectsmonthly charging or meter rate charging, and enters into a cloud usecontract concerning the charging. The cloud user terminal 1 accesses thecloud computing service portal site 2, monitors an operation state ofthe virtual machine VM, and manipulates the operation of the virtualmachine VM.

The management server 3 manages the servers and the like in the hardwaregroup 5, allocates the hardware to the virtual machines VM, andgenerates and manages the virtual machines VM in cooperation withvirtualization software (hypervisor) 4.

The virtualization software 4 is basic software for allocating,according to an instruction from the management server 3, the CPUs, thememories, the hard disks, and the networks of the hardware group 5 tocause the virtual machines VM to operate. The virtualization software 4operates on, for example, the servers in the hardware group 5.

In addition to the allocation of the hardware, the virtual machine VMhas, in the hard disk thereof, an image file including an OS, middlewareMW, an application AP, and a database DB. For example, the virtualmachine VM writes the image file from the hard disk into the memoryduring start and performs an operation corresponding to a desiredservice.

A client terminal 6 is a terminal of a client who receives provision ofa service managed by the cloud user. The client terminal 6 accesses thevirtual machine VM of the cloud user via the network 7 and receivesprovision of a service managed by the cloud user. The client terminal 6also accesses the virtual machine VM via an access to the managementserver 3. For example, when the virtual machine VM is in a suspendstate, the client terminal 6 accesses the virtual machine VM through themanagement server 3.

FIG. 2 is a diagram depicting an example of functions of thevirtualization software when a virtual machine executes thevirtualization software. The virtualization software 4 allocates theresources of the hardware group 5 to the virtual machines VM to causethe virtual machines VM to operate. Therefore, the virtualizationsoftware 4 includes, for example, a virtual machine generating unit 401configured to generate virtual machines, a virtual machine starting unit402 configured to start the virtual machines, a virtual machine shutdownunit 403 configured to shut down the virtual machines, a virtual machinesuspend unit 404 configured to temporarily stop, that is, suspend thevirtual machines in a started state, a virtual machine resume unit 405configured to resume the virtual machines in a suspend state, a virtualmachine operation information collecting unit 406 configured to collectoperation information of the virtual machines, and an operationinformation notifying unit 407 configured to notify the managementserver 3 of the operation information.

FIG. 3 is a diagram depicting a configuration example of the managementserver. The management server 3 includes software 301 and a storing unit320 in addition to not-depicted hardware such as a CPU.

Functions of the software 301 when executed by the management serverinclude a cloud user managing unit 302 configured to perform cloud usermanagement such as charging processing for a cloud user who entered intoa cloud contract in the cloud computing service portal site 2, a virtualmachine generating unit 303 configured to allocate hardware resourcesand genertate virtual machines VM on the basis of the cloud contract, avirtual machine managing unit 311 configured to manage the virtualmachines, and a virtual machine monitoring unit 304 configured tomonitor the operation of the virtual machines.

Further, the functions of the software 301 when executed by themanagement sever includes a virtual machine start control unit 305configured to instruct the virtualization software 4 to start thevirtual machines, a virtual machine shutdown control unit 306 configuredto instruct the virtualization software 4 to shut down the virtualmachines in a started state, a virtual machine suspend control unit 307configured to instruct the virtualization software 4 to suspend thevirtual machines in the started state, a virtual machine resume controlunit 308 configured to instruct the virtualization software 4 to resumethe virtual machines in a suspend state, a virtual machine refreshcontrol unit 309 configured to instruct the virtualization software 4 tosuspend the virtual machine in the suspend state after temporarilyresuming the virtual machines, and an access control unit 310 configuredto control accesses to the virtual machines in the suspend state.

The storing unit 320 in the management server stores information of avirtual machine operation information table 321 including, for example,operation information of the virtual machines reported from thevirtualization software 4, information of a virtual machine managementtable 322 for managing the virtual machines, a cloud user, a contract ofthe cloud user, and the like, and wait screen data (access responsescreen data) 323 for displaying processing-in-progress for an access ona client terminal when resume processing takes time.

FIG. 19 is a diagram depicting an example of the virtual machinemanagement table. In the virtual machine management table depicted inFIG. 19, IP addresses and wait screen data files for three virtualmachines vm001, vm002, and vm003 are stored. The management server 3performs management control for the virtual machines referring to thevirtual machine management table.

FIG. 20 is a diagram depicting an example of the virtual machineoperation information table. The table is explained in detail below.

FIG. 21 is diagram depicting a hardware configuration of the cloudcomputing service portal site, the management server, and the hardwaregroup in the server facility. The management server 3 includes a CPU330, which is a processor, a memory 332, an external interface 334, anda storage medium 336 configured to store the software 301 and theinformation of the tables 321 to 323 of the management server depictedin FIG. 3. The CPU 330, the memory 332, the external interface 334, andthe storage medium 336 are connected via a bus.

Like the management server 3, the cloud computing service portal site 2includes a CPU, which is a processor, a memory, an external interfaceIF, and a storage medium configured to store site control software andthe like. The CPU, the memory, the external interface IF, and thestorage medium are connected via a bus. The hardware resource group 5 isa computer group including, like the management server 3, a CPU, whichis a processor, a memory, an external interface IF, and a storage mediumconfigured to store software and the like. The virtualization software 4and the like depicted in FIG. 2 are stored in the storage medium in thehardware resource group 5. The software in the storage medium is storedin the memory so that CPU executes the software in the memory.

Monthly Charging and Meter Rate Charging

As charging of a cloud computing service, in general, there are monthlycharging for charging a fixed rate irrespective of whether a cloud usercaused virtual machines to operate using the hardware 5 and a meter ratecharging for adding a rate corresponding to time during which the clouduser caused the virtual machines to operate using the hardware. Ingeneral, a time unit price is lower in the monthly charging than in themeter rate charging. That is, meter rate charging time unit price×24h×30 days>monthly charging.

Usually, the cloud user selects the monthly charging or the meter ratecharging according to job contents caused to operate on a cloudcomputing. For example, when the cloud user provides a Web service onthe cloud computing, it is unpredictable when the Web service isaccessed from a client terminal. Therefore, it is necessary to alwayskeep virtual machines of the Web service in a started state. The clouduser needs to enter into a cloud computing contract with the monthlycharging.

On the other hand, for example, when the cloud user provides a servicefor performing monthly processing on the cloud computing, the cloud useronly has to sets the virtual machines in the started state only in themonth end. In that case, the cloud user enters into a cloud computingcontract with the meter rate charging and controls the start of thevirtual machine at necessary time. That is, in the case of the meterrate charging, the cloud user temporarily sets the virtual machines inthe started state in a necessary period of time and provides theservice. In the other times, the cloud user controls the virtualmachines to be shut down. According to the shutdown of the virtualmachines, a cloud operator can release hardware allocated to the virtualmachines and can improve efficiency of use of the hardware.

As explained above, for example, when the Web service, access time towhich is unknown, is provided the monthly charging is selected. In thiscase, even when a frequency of use of the provided Web service is low,since the virtual machines are always in the started state, the monthlycharging continues to be generated. Therefore, when the frequency of useis low, if the virtual machines can be started when an access occurs, itis possible to select the meter rate charging. However, it is notpreferable to start or suspend the virtual machines in response to theoccurrence of the access because, since it takes a fixed time until thevirtual machine changes to an operation state, the start of processingresponding to the access to the client terminal is delayed.

Problems of Resume of the Virtual Machines

FIG. 4 is a diagram depicting the operation during resume of the Webserver by the virtual machine. In FIG. 4, the management server 3, thevirtualization software 4, a Web server 8 configured by a virtualmachine generated by the virtualization software 4, and processingcontents of the client terminal 6 that accesses the Web server 8 aredepicted. Processing S1 to S7 during the resume is explained below.

Before the explanation of the resume, suspension of the virtual machineis explained. The suspension of the virtual machine is temporary stop ofthe virtual machine. Processing of the suspension includes a stop ofallocation of hardware such as a CPU to the virtual machine, saving ofdata and information in a memory of the virtual machine in a hard disk,saving of context, including an address of instruction being executed bythe CPU of the virtual machine, and data in various registers (ageneral-purpose register, a floating point register, etc.) in the harddisk, and release of hardware resources allocated to the virtualmachine.

On the other hand, the resume of the virtual machine means resuming thevirtual machine in a temporarily stopped state. Processing of the resumeincludes allocation of hardware resources to the virtual machine,readout of the context from the hard disk and restoration of the contextin the CPU, readout of data and information stored in the memory of thevirtual machine from the hard disk and restoration of the data and theinformation in the memory, and resume of allocation of hardware such asthe CPU to the virtual machine.

As depicted in FIG. 4, first, the client terminal 6 executes an accessto the Web server 8 (S1). When the Web server 8 is in a suspend state,an IP address of an access destination to the Web server 8 is written tothe management server 3. Therefore, the client terminal 6 accesses themanagement server 3. In response to the access, the management server 3once hold the access (S2) and instructs the virtualization software 4 toresume the virtual machine VM configuring the Web server 8 (S3).

The virtualization software 4 executes resume processing for the virtualmachine VM in response to the resume instruction (S4). In the resumeprocessing, the virtualization software 4 reads out the context and thedata in the memory saved during the suspension from the hard disk HDDand writes the context and the data in the CPU and the memory of the Webserver 8. When the resume processing is completed, the management server3 transmits the held access to the Web server 8 (S5). In response to thetransmission of the access, the Web server 8 processes the access andtransmits a login screen to the client terminal 6 (S6). According to thetransmission of the login screen, the client terminal 6 displays thelogin screen (S7).

As explained above, for example, when the Web server 8 only has to beresumed in response to the access from the client terminal, mainly afterprocessing for transferring data from the hard disk HDD to the memory,the Web server 8 can respond to the client terminal. Therefore, longtime is not taken for the resume.

FIG. 5 is a diagram depicting another example of the operation duringthe resume of the Web server by the virtual machine. In FIG. 5,processes of the management server 3, the virtualization software 4, theWeb server 8 configured by the virtual machine VM, and the clientterminal 6 that accesses the Web server 8 are also depicted. ProcessingS1 to S7 during the resume is explained below.

In an example depicted in FIG. 5, the Web server 8 provides apredetermined service in cooperation with an application server (APserver) 8 a and a database server (DB server) 8 b. First, the clientterminal 6 executes an access to the Web server 8 (S1). The managementserver 3 holds the access (S2) and instructs the virtualization software4 to resume the Web server 8 (S3). The virtualization software 4 resumesthe Web server 8 (S4). The management server 3 transmits the held accessto the Web server 8 (S5). Processing from S1 to S5 is the same as theprocessing depicted in FIG. 4.

In the example depicted in FIG. 5, thereafter, the Web server 8transmits necessary requests to the AP server 8 a and the DB server 8 bin response to the received access (S7). Since the AP server 8 a and theDB server 8 b are also in the suspend state, the requests aretransmitted to the management server 1 The management server 3 onceholds the requests (S8), and instructs the virtualization software 4 toresume the AP server 8 a and the DB server 8 b (S9). In response to theinstruction, the virtualization software 4 executes resume of the APserver 8 a and the DB server 8 b (S10).

Then, the management server 3 transmits the held requests to the resumedAP server 8 a and DB server 8 b (S11). The AP server 8 a and the DBserver 8 b process the requests and reply to the Web server 8 (S12 andS13). In response to the reply, the Web server 8 sends a reply to theaccess to the client terminal 6 (S14).

However, in the example depicted in FIG. 5, in response to the accessfrom the client terminal 6, after the resume of the Web server 8 and theresume of the AP server 8 a and the DB server 8 b, the Web server 8returns an access response to the client terminal 6. Several ten secondsis sometimes taken for such resume in three layers. Therefore, theclient terminal 6 observes a response delay and observes timeout for theaccess.

FIG. 6 is a diagram depicting a delay of resume of the virtual machine.An OS of the virtual machine periodically executes a refresh operation.The periodic refresh operation includes periodic processing for updatinga virus pattern and periodic alive notification processing. In theperiodic processing for updating a virus pattern, the virtual machinevoluntarily accesses a virus pattern update server through a network anddownloads the latest virus pattern. In the periodic alive notificationprocessing, the virtual machine voluntarily accesses an alive checkserver or the like through the network and transmits a message fornotifying that the virtual machine is operating. The periodic refreshoperation includes, besides the above, for example, version upgrade forthe OS and the application and periodic write processing for a log filein the hard disk.

However, in the virtual machine in the suspend state, since theoperation of the OS is stopped, the periodic refresh operation is put ina hold state. As a result, when the virtual machine in the suspend stateis resumed, refresh operations put in the hold state are started all atonce. Therefore, substantial resume processing including a refreshoperation in addition to the resume processing takes a long time. As aresult, in some case, the start of the access processing triggering theresume is delayed and a response to the access is substantially delayed.

In the resume in FIG. 6, processing S21 to S28 is executed according toa time axis of the abscissa. First, the virtual machine VM is suspended(S21). A refresh operation in the virtual machine VM in the suspendstate is held (S22 and S23). As explained above, the refresh operationis the processing of alive notification, the processing of virus patternupdate, and the like. Usually, the OS of the virtual machine VM performstimer management concerning the refresh operation and voluntarily startsthe refresh operation periodically. However, since the virtual machineVM is suspended and the OS is in an operation stopped state, theprocessing is not executed even if time for alive notification and timefor virus pattern update comes in the timer management.

In the mean time, an access from the client terminal occurs (S24). Withthe access as a trigger, the resume of the virtual machine VM is startedas explained with reference to FIG. 5 (S25). When the virtual machine VMis resumed and the OS starts execution, the periodic refresh operationis started according to the timer management. So an operation of thealive notification processing (S26) and the operation of the viruspattern update (S27) are executed by the OS. After the refresh operationis completed, the resumed virtual machine VM starts processing of theaccess (S28). Therefore, a resume time Tr until completion of the resumeis relatively long. The start of the processing of the access issubstantially delayed.

Usually, the OS executes the refresh operation according to the owntimer management. Therefore, the refresh operation is an operation thatthe OS performs by voluntarily accessing the outside via the networkrather than an operation performed in response to an access from theoutside. The version upgrade operation for the software is the same.

Virtual Machine Management Program in this Embodiment

The virtual machine management program in this embodiment is executed bythe management server 3 and provides the cloud user with automatic meterrate charging (or high-speed resume meter rate charging) different fromthe conventional monthly charging and meter rate charging.

FIG. 7 is a flowchart of a virtual machine management program in thisembodiment. As explained above, the management server 3 performs themanagement control for the virtual machine VM in association with thevirtualization software 4. On the basis of conclusion of a contract inthe cloud computing service portal site 2 by the cloud user terminal 1,the management server 3 instructs the virtualization software 4 toallocate hardware to the virtual machine VM and executes start controlfor instructing the virtualization software 4 to start the virtualmachine VM (S30). Consequently, the virtual machine VM changes to thestarted state. The virtual machine VM executes an application of thecloud user, whereby a service of the cloud user is provided,

During the operation of the virtual machine VM in the started state, themanagement server 3 acquires operation information of the virtualmachine VM (S31) and monitors an access to the virtual machine VM (S32).The access to the virtual machine VM is a kind of an operation requestto the virtual machine VM. Besides the access, the management server 3may monitor an event for requesting the virtual machine VM to performsome operation. The virtualization software 4 collects operationinformation of the virtual machine VM and transmits the operationinformation to the management server 3. The management server 3 receivesthe transmission of the operation information by the virtualizationsoftware and acquires the operation information. The operationinformation of the virtual machine VM and the monitoring of the accessto the virtual machine VM are explained in detail below.

While the access to the virtual machine VM occurs (FALSE in S33), themanagement server 3 continuously performs the acquisition S31 of theoperation information of the virtual machine VM and the monitoring S32of the access to the virtual machine VM. However, when the access to thevirtual machine VM does not continuously occur for a fixed time (TRUE inS33), the management server 3 executes suspend control for causing thevirtualization software 4 to suspend the virtual machine VM (S34).Processing of the suspension of the virtual machine VM is as explainedabove.

When the virtual machine VM is suspended, the hardware allocated to thevirtual machine VM by the virtualization software 4 is released.Consequently, the released hardware may be allocated to virtual machineVMs for other services. The cloud computing operator is able to improveefficiency of use of the hardware.

While the virtual machine VM is in the suspend state, the managementserver 3 monitors whether an event for requesting the operation of thevirtual machine VM, for example, an access to the virtual machine VMoccurs (S37). When the access occurs (YES in S37), in a state in whichthe access is held, the management server 3 executes resume control forinstructing the virtualization software 4 to resume the virtual machineVM (S38). The resume processing for the virtual machine VM is asexplained above. After the resume of the virtual machine VM iscompleted, the management server 3 transmits the held access to thevirtual machine VM in the resume state. Processing performed by themanagement server 3 and the virtualization software 4 when the accessoccurs is equivalent to, for example, the processing explained withreference to FIGS. 4 and 5.

According to this embodiment, while the virtual machine VM is in thesuspend state, that is, while the access to the virtual machine VM doesnot occur (NO in S37), the management server 3 periodically executesresume control S35 on the virtualization software 4 and, after a refreshoperation time length, executes suspend control S36. According to theperiodic resume, the virtual machine VM changes to a temporary operationstate and executes the refresh operation according to the timermanagement by the OS.

When the access to the virtual machine VM occurs (YES in S37), themanagement server 3 executes resume control for instructing thevirtualization software to resume the virtual machine VM. In the resume,the virtual machine VM does not perform the refresh operation. This isbecause it is highly probable that the refresh operation, which shouldbe periodically executed, is already completed by the temporary resumeS35 and the suspension of the virtual machine VM S36 periodicallyperformed during the suspension. Therefore, the refresh operation by theOS during the resume operation after the access does not occur or, evenif the refresh operation occurs, the refresh operation occurs onlyslightly. When the resume of the virtual machine VM is completed, themanagement server 3 transmits the received access to the virtual machineVM and causes the virtual machine VM to execute processing of a requestcorresponding to the access.

The management server 3 may detect, from the operation information ofthe virtual machine VM acquired in step S31, a timing and a time lengthof the refresh operation periodically executed by the virtual machineVM. While the access to the virtual machine VM does not occur, themanagement server 3 may execute the resume control S35 on thevirtualization software 4 at a timing based on the timing of the refreshoperation and, after the refresh operation time length, may perform thesuspend control S36. In response to the resume control S35, thevirtualization software 4 causes the virtual machine VM in the suspendstate to execute the resume processing. In this case, the periodicresume control S35 for the suspended virtual machine VM is performed atthe timing of the refresh operation of the virtual machine VM that isnormally operating. Therefore, in the temporary resume state, thevirtual machine VM executes the periodic refresh operation.

The temporary resume control S35 and the suspend control S36 for thevirtual machine VM in the suspend state do not always have to be matchedto the timing of the periodic refresh operation detected on the basis ofcollected operation information. After the timing of the periodicrefresh operation, the management server 3 may execute the temporaryresume control S35 and the suspend control S36. In either case, thetemporary resume control S35 is performed when the access does notoccur. Therefore, even if a certain time period is taken when thevirtual machine VM executes the refresh operation according to thetemporary resume, no problem occurs.

Note that, according to this embodiment, when the virtual machine VM issubjected to resume control in response to the occurrence of the accessS37, if time is taken for the resume, the management server 3 maytransmit data of an access response screen (a wait screen) fordisplaying processing-in-progress for the access provided by the clouduser in advance to an accessing client terminal and cause the clientterminal to display the access response screen. Consequently, it ispossible to prevent or suppress the Web server from being observed bythe client that the Web server is performing the resume operation.

According to this embodiment, when the management server 3 periodicallyperforms the resume control (S35), if an access occurs to the virtualmachine VM that is performing the refresh operation in the resume state,the management server 3 causes the virtual machine VM to executeresponse processing to the access without suspending. That is, themanagement server 3 normally performs access control for receiving andholding an access to the suspended virtual machine VM, if the virtualmachine VM is suspended. However, if the virtual machine VM isaccidentally in the periodical resumed state when the access occurs, itis preferable that the management server 3 transmits the access to thevirtual machine VM and causes the virtual machine VM to performprocessing.

Further, according to this embodiment, when an event for requesting anoperation such as an access does not occur in the virtual machine VMcontinuously for a fixed time, the management server 3 suspends andtemporarily stops the OS of the virtual machine VM rather than shuttingdown the OS. It is not preferable to shut down the OS of the virtualmachine VM because it is necessary to start the OS again when thevirtual machine VM is resumed, boot processing is involved, and a longtime is taken. In this embodiment, since the suspension processing isperformed, the resume processing only has to be performed when an accessoccurs next. Therefore, it is possible to reduce time taken for theresume and return a response to the access within an appropriate waittime.

Operation of an Automatic Meter Rate Charging Contract

FIG. 8 is a diagram depicting an operation performed in entering into anautomatic meter rate charging contract in this embodiment. In FIG. 8,processing in the cloud user terminal 1, the cloud computing serviceportal site 2, the management server 3, and the virtualization software4 is depicted. FIG. 9 is a flowchart in entering into the automaticmeter rate charging contract in this embodiment. In FIG. 9, theoperation depicted in FIG. 8 is depicted as the flowchart. The operationof the automatic meter rate charging contract is explained below withreference to FIGS. 8 and 9.

First, the cloud user terminal 1 accesses the cloud computing serviceportal site 2 and enters into an automatic meter rate charging contract(S1-1). In entering into the contract, the cloud user selects theautomatic meter rate charging as a charging form out of the monthlycharging, the meter rate charging, and the automatic meter rate chargingin addition to contract conditions such as the number of docks of theCPU of the virtual machine VM, a capacity of the memory, a capacity andIOPS of the hard disk, bandwidth of the network, and an OS. The clouduser creates, in advance, data of an access response screen (a waitscreen) for displaying access-response-in-progress and stores the datain the cloud user terminal 1. As explained below, the access responsescreen is screen data for displaying, when an access from the clientterminal 6 to the virtual machine VM in the suspend state occurs, if theresume processing for the virtual machine VM takes time,access-response-in-progress on the client terminal in order to preventthe client from noticing that the resume processing takes time.

The cloud computing service portal site 2 checks the contract (S2-1) andinforms the management server 3 of the contract conditions. In responseto the information, the management server 3 instructs the virtualizationsoftware 4 to generate a virtual machine VM that satisfies the contractconditions (S3-1). The cloud user terminal 1 transmits the data of theaccess response screen (the wait screen) for displayingaccess-response-in-progress to 2o the management server 3. Themanagement server 3 stores the screen data (S3-2). In response to thegeneration instruction by the virtual machine VM, the virtualizationsoftware 4 allocates the hardware, generates the virtual machine VM, andstarts the virtual machine VM (S4-1).

Access Monitoring and Suspend Control by the Management Server

In the contract of the automatic meter rate charging in this embodiment,when an operation request, for example, an access to the virtual machineVM does not continuously occurs for a fixed time, the management server3 automatically executes control for suspending the virtual machine VM.When an access to the virtual machine VM in the suspend state occurs,the management server 3 executes control for resuming the suspendedvirtual machine VM.

While the virtual machine VM is suspended, hardware allocated to thevirtual machine VM is released and may be allocated to other virtualmachines VM. While the virtual machine VM is suspended, since the clouduser is not charged, it is possible to suppress cloud use costs for thecloud user.

The management server 3 periodically subjects the suspended virtualmachine VM to resume control, causes the virtual machine VM to execute arefresh operation, and thereafter subjects the virtual machine VM to thesuspend control. Since the virtual machine VM in the suspend state isperiodically caused to perform the refresh operation, in the resumeprocessing performed when an access occurs thereafter, the virtualmachine VM does not need to perform the refresh operation held duringthe suspension. Therefore, it is possible to prevent the resumeprocessing from being continued for a long time and respond to theaccess in a short time.

FIG. 10 is a diagram depicting the access monitoring and the suspendcontrol by the management server. The monitoring of an access to theoperating virtual machine and the suspend control performed when anaccess does not continuously occur for a fixed time are explained withreference to FIG. 10.

As depicted in FIG. 10, the client terminal 6 accesses the virtualmachine VM in the started state (S6-1). When an IP address of thevirtual machine VM is present in the virtual machine VM, the access isdirectly transmitted to the virtual machine VM as indicated by a brokenline in the figure. When the IP address of the virtual machine VM is setin the management server 3, the access is transmitted from the clientterminal 6 to the virtual machine VM via the management server 3 asindicated by a solid line in the figure. The management server 3monitors an access to the virtual machine VM (S3-3). The virtualizationsoftware 4 monitors an operation state of the virtual machine VM andnotifies operation information of the virtual machine VM to themanagement server 3 (S4-2).

When the access is directly transmitted to the virtual machine VM, themanagement server 3 can detect the occurrence of the access from virtualmachine information collected by the virtualization software 4. When theaccess is transmitted through the management server 3, the managementserver 3 can detect the occurrence of the access.

When an access from the outside such as the client terminal 6 to thevirtual machine VM does not continuously occur for a fixed time, themanagement server 3 executes suspend control for instructing thevirtualization software 4 to suspend the virtual machine VM charged bythe automatic meter rate charging (S3-4). In response to the suspensioninstruction, the virtualization software 4 suspends the virtual machineVM (S4-3). Processing necessary for the suspension is as explainedabove. Consequently, the virtualization software 4 stops allocation ofthe hardware to the virtual machine VM. The virtual machine VM stops theoperation, writes context and data in the memory of the virtual machineVM in the hard disk HDD, and releases hardware resources allocated tothe virtual machine VM.

Resume Control during Access Occurrence by the Management Server

FIG. 11 is a diagram depicting resume control during access occurrenceby the management server. FIG. 12 is a flowchart of the resume controlduring access occurrence by the management server.

In FIG. 11, an access from the client terminal 6 to the virtual machineVM occurs (S6-2). While the virtual machine VM is suspended, an IPaddress to the virtual machine VM is set in the management server 3.Therefore, the management server 3 receives the access. The managementserver 3 monitors an access to the suspended virtual machine VM and,when an access occurs, once holds the access (S3-5). The managementserver 3 executes resume control for instructing the virtualizationsoftware 4 to resume the virtual machine VM (S3-6).

In response to the resume instruction, the virtualization software 4resumes the virtual machine VM (S4-4). Resume processing is as explainedabove. That is, the virtualization software 4 allocates the hardwareresources to the virtual machine VM, reads out a context and data fromthe hard disk HDD, writes the context and the data in the CPU and thememory of the virtual machine VM, and resumes allocation of the hardwareresources to the virtual machine VM. Consequently, the virtual machineVM changes to an operating state (a started state).

The management server 3 receives a resume completion notification of thevirtual machine VM from the virtualization software 4 and checks theresume completion (S3-7). When the resume takes time, for example, whenthe resume processing exceeds a third time, the management server 3returns the stored access response screen (wait screen) data to theaccessing client terminal 6 and causes the client terminal 6 to displaythe access response screen (the wait screen) (S3-8). Consequently, themanagement server 3 prevents the client from noticing that the virtualmachine VM is being resumed.

After the resume completion, the management server 3 transmits theaccess held in step S3-5 to the resumed virtual machine VM (S3-9). Inresponse to the transmission of the access, the virtual machine VMreturns an access response to the client terminal 6.

As specifically depicted in FIG. 12, the resume control by themanagement server 3 is as explained below. Note that numbers of steps inFIG. 12 are consistent with the numbers of the steps in FIG. 11.

First, the management server 3 monitors an access to the suspendedvirtual machine VM from the client (S3-5(1)). When an access isdetected, the management server 3 once holds the access (S3-5(2)). Themanagement server 3 instructs the virtualization software 4 to resumethe virtual machine VM (S3-6).

The management server 3 stays on standby for a third time, for example,until three seconds elapses (S3-8(1)). If the resume of the virtualmachine VM is completed (YES in S3-7(1)), the management server 3transmits the held access to the virtual machine VM (S3-9). If theresume of the virtual machine VM is not completed even after themanagement server 3 stays on standby for the third time (NO in S3-7(1)),the management server 3 returns the access response screen (the waitscreen) data to the client terminal 6 and causes the client terminal 6to display the access response screen (S3-8(2)). Thereafter, themanagement server 3 periodically checks the resume completion of thevirtual machine VM (S3-7(2)). If the resume is completed (YES inS3-7(3)), the management server 3 transmits the held access to thevirtual machine VM (S3-9).

Periodic Refresh Operation and Operation Information Acquisition fromthe Virtual Machine VM by the Management Server

With the automatic meter rate charging in this embodiment, in order toperiodically cause the suspended virtual machine VM to perform a refreshoperation, the management server 3 periodically executes the resume ofthe virtual machine VM and the suspend control. The timing of therefresh operation only has to be, for example, periodically set. Sincethe virtual machine VM is periodically caused to perform the refreshoperation, in the resume processing performed when an access from theclient terminal 6 occurs at any timing, it is possible to reduce theprobability that the refresh operation held during the suspension isperformed and perform an access response in a short time.

Preferably, the management server 3 acquires operation information ofthe virtual machine VM, extracts a timing and an operation time lengthof the refresh operation of the virtual machine VM from the operationinformation, subjects the suspended virtual machine VM to the resumecontrol according to the timing, and performs the suspend control afterthe operation time length elapses. If the management server 3 extracts atiming and an operation time length of the refresh operation extractedfrom operation information during a normal operation of the virtualmachine VM and causes the virtual machine VM to securely execute therefresh operation at the timing, then, in the resume processingperformed when an access from the client terminal 6 occurs, the refreshoperation is not executed. Therefore, it is possible to accelerate anaccess response.

FIG. 13 is a diagram depicting operation information acquisition fromthe virtual machine by the management server. FIG. 14 is a more specificflowchart of the action information acquisition by the managementserver. FIG. 14 includes access management and suspend control by themanagement server.

As depicted in FIG. 13, the virtualization software 4 collects operationinformation of the virtual machine VM and periodically notifies themanagement server 3 of the operation information (S4-2). The managementserver 3 periodically receives the operation information of the virtualmachine VM from the virtualization software 4 and stores the operationinformation (S3-10).

As depicted in FIG. 14, the management server 3 monitors an access fromthe client terminal 6 to the virtual machine VM in the started stateand, if there is an access, updates an access record (S40 and S3-3). Theaccess monitoring by the management server 3 is as explained withreference to FIG. 10. Every time a fourth time (e.g., one hour) elapses(YES in S41), the management server 3 acquires operation information ofthe virtual machine VM from the virtualization software 4 (S42 andS3-10). That is, step S3-10 in FIG. 13 corresponds to the periodicacquisition of operation information of the virtual machine VM. Aperiodic interval of the acquisition of operation informationcorresponds to the fourth time.

When the operation information is acquired, if the access record in stepS40 is an update due to occurrence of an access (YES in S44), themanagement server 3 clears (discards) the acquired operation information(S43). This is because, since the management server 3 extracts a timingand an operation time of the refresh operation by the virtual machine VMfrom the operation information of the virtual machine VM, it isdesirable to include, in the operation information, only a history of anoperation starting from a voluntary output operation to the outside bythe virtual machine VM involved in the refresh operation. That is, it isdesirable to exclude an operation history of an access from the clientand an access response to the access and include only an operationstarting from a voluntary output operation to the outside, which is nota response to the access from the client.

Examples of the refresh operation are periodic alive notification,periodic virus pattern update, update of software, and like, which areaccess operations to the outside periodically executed by the OS of thevirtual machine VM while staying on standby according to the timer.

When an access does not occur while the fourth time elapses, themanagement server 3 records the acquired operation information of thevirtual machine VM (S45 and S3-10). When an un-updated state of anaccess record (no access) continues for the first time (e.g.,forty-eight hours) (YES in S46), the management server 3 executessuspend control far giving a suspension instruction to thevirtualization software 4 (S47 and S3-4). If the access record isupdated within forty-eight hours (NO in S46), the management server 3clears already-stored operation information of the virtual machine VM(S43).

Consequently, when an access to the virtual machine VM does notcontinuously occur for forty-eight hours, the management server 3retains the operation information of the virtual machine VM acquired forforty-eight hours and subjects the virtual machine VM in which an accessdoes not occur to the suspend control. Consequently, the managementserver 3 acquires, as the operation information, a history of therefresh operation of the virtual machine VM immediately before beingsuspended.

FIG. 20 is a diagram depicting an example of an operation informationtable of the virtual machines VM. The operation information table is ahistory of the number of counts of an IO operation and an IOcontinuation time in total of all number of IO counts in every one hourconcerning three virtual machines VM001, VM002, and VM003. In the caseof the virtual machine VM001, one hour of 00:00 to 01:00 and one hour of01:00 to 02:00 include a history of the number of IO counts of 150 andthe IO continuation time of five minutes and the number of IO counts of500 and the IO continuation time of ten minutes.

Therefore, from the operation history, the management server 3 detectsthat if the management server 3 subjects the suspended virtual machineVM001 to the resume control and the suspend control for five minutes of00:55 to 01:00 and ten minutes of 01:50 to 02:00, the management server3 can cause the virtual machine VM001 to perform the refresh operationin the temporary resume state. Similarly, from the operation history,the management server 3 detects that the management server 3 only has tosubject the suspended virtual machine VM002 to the resume control andthe suspend control in twenty minutes of 09:40 to 10:00.

FIG. 15 is a diagram depicting a periodic refresh operation of thesuspended virtual machine. An example depicted in FIG. 15 is an examplein which timing for the refresh operation is set to the optimum timingextracted from the operation history of the virtual machine. However,the refresh operation of the virtual machine may be simply periodicallyexecuted without depending on the operation history.

The management server 3 confirms on the basis of the operationinformation of the virtual machine VM that the virtual machine VM is ina period of time when the virtual machine VM independently operates(S3-11). The management server 3 instructs the virtualization software 4to resume the virtual machine VM in time when the virtual machine VMindependently operates (S3-12). In response to the instruction, thevirtualization software 4 resumes the virtual machine VM (S4-5).

When the management server 3 confirms from the virtualization software 4that the resume is completed (S3-13), the management server 3 stays onstandby until a refresh operation time by the virtual machine VM (asecond time) elapses (S3-14). Desirably, when an access from the clientterminal 6 occurs while the virtual machine VM is temporarily in theresume state (S6-3), the management server 3 transmits the access to thevirtual machine VM and causes the virtual machine VM to perform accessprocessing (S3-14) without suspending.

After the time taken for the refresh operation (the second time)elapses, the management server 3 instructs the virtualization software 4to suspend the virtual machine VM (S3-15). In response to theinstruction, the virtualization software 4 suspends the virtual machineVM (S4-6).

FIG. 16 is a flowchart of control of the refresh operation of thevirtual machine by the management server. In FIG. 16, steps same as thesteps in FIG. 15 are denoted by the same step numbers in parentheses.

According to operation information concerning the refresh operation ofthe virtual machine VM depicted in FIG. 20, the management server 3temporarily resumes the suspended virtual machine VM for an IO accesscontinuation time that occurred in the past in every one hour.Therefore, every time a fixed interval (e.g., one hour) elapses (YES inS50), the management server 3 executes control for temporarily sets thesuspended virtual machine VM to the resume state indicated by steps S51to S56.

If the suspended virtual machine VM is present (YES in S51), when aperiod of time when the suspended virtual machine VM independentlyoperates comes (S52 and S3-11), the management server 3 instructs thevirtualization software 4 to resume the virtual machine VM (S53 andS3-12). In response to the instruction, the virtual machine VM isresumed and changes to the resume state. Then, the virtual machine VMindependently starts the refresh operation according to the timermanagement in the OS. The management server 3 waits for completion ofthe refresh operation (S54 and S3-14) and instructs the virtualizationsoftware 4 to suspend the virtual machine VM (S55 and S3-15).

The management server 3 applies the processing in S52 to S55 to all thesuspended virtual machines VM (S56).

As depicted in FIGS. 15 and 16, in the automatic meter rate charging inthis embodiment, the management server 3 suspends the un-accessedvirtual machine VM, periodically resumes the virtual machine VM duringthe suspension, and causes the virtual machine VM to execute the refreshoperation. Therefore, when the management server 3 subjects thesuspended virtual machine VM to the resume control in response to theaccess from the client terminal 6 later, since the refresh operationheld during the suspension is absent in the virtual machine VM, it ispossible to complete the resume processing in a short time and return anaccess response in a short time.

FIG. 17 is a diagram depicting a normal resume operation. On the otherhand, FIG. 18 is a diagram depicting the resume operation of the virtualmachine charged by the automatic meter rate charging in this embodiment.

In FIGS. 17 and 18, processing by the client terminal 6, the managementserver 3, the virtualization software 4, and the virtual machine VM aredepicted with respect to a time axis of the abscissa.

In the case of the normal resume operation depicted in FIG. 17, anaccess to the suspended virtual machine VM by the client terminal 6occurs (S60). The management server 3 once holds the access (S61) andrequests the virtualization software 4 to resume the virtual machine VM(S62). In response to the request, the virtualization software 4 resumesthe virtual machine VM (S64). Specifically, the virtualization software4 loads data and a context of the virtual machine VM from the hard diskHOD and writes the data and the context in the memory and CPU (S64). Themanagement server 3 periodically polls, for example, a state of thevirtual machine VM that the management server 3 instructs thevirtualization software 4 to resume (S63). When the management server 3detects that the resume is completed (S65), the management server 3transmits the held access to the virtual machine VM (S66).

However, when the resume operation is completed (S65) and the virtualmachine VM starts an operation (S67), the virtual machine VM starts toexecute, all at once, refresh operations held during the suspension(S68). Therefore, the virtual machine VM cannot start processing of thetransmitted access. As a result, the virtual machine VM performsprocessing of the access only after the refresh operation is completed(S69) and responds to the access from the client terminal 6 (S70). Inthis way, an access response time is long.

In the case of the resume operation for the virtual machine charged bythe automatic meter rate charging in this embodiment depicted in FIG.18, an operation is performed as explained below. Steps S60 to S70 arethe same as steps S60 to S70 explained above except step S68. Thevirtual machine VM charged by the automatic meter rate chargingperiodically performs the refresh operation during suspension.Therefore, in the resume of the virtual machine VM performed in responseto the access from the client terminal 6, when the resume processing iscompleted and the virtual machine VM starts an operation (S67), therefresh operation held during the stop is absent. Therefore, it ispossible to start processing of he held access (S69) in a shortest timeafter the operation start (S82).

In the case of the resume operation for the virtual machine VM chargedby the automatic meter rate charging, when the resume takes time, themanagement server 3 transmits the wait screen data to the clientterminal 6 (S80) and causes the client terminal 6 to display the waitscreen (S81). That is, when the resume processing performed by thevirtualization software 4 in response to the access from the clientterminal 6 takes time, the wait screen is transmitted to the clientterminal 6. Therefore, it is possible to prevent the client fromnoticing that the virtual machine VM is being resumed.

As explained above, according to this embodiment, the cloud computingservice provider may release, during the suspension of the virtualmachine, the hardware resources allocated to the virtual machine underthe contract by the automatic meter rate charging and allocate thehardware resources to the other virtual machines. Therefore, it ispossible to realize effective use of the hardware. The cloud usergenerates an always-accessible Web server or the like with the automaticmeter rate charging less expensive than the conventional monthlycharging. Moreover, when an access to a service provided by the virtualmachine is absent, the virtual machine is automatically subjected to thesuspend control by the cloud computing service provider. When an accessoccurs, the virtual machine is automatically subjected to the resumecontrol. Therefore, the cloud user is released from troublesomeoperation of the virtual machine. Moreover, since the resume iscompleted in a short time, it is possible to suppress a delay in aresponse to the access.

All examples and conditional language provided herein are intended forthe pedagogical purposes of aiding the reader in understanding theinvention and the concepts contributed by the inventor to further theart, and are not to be construed as limitations to such specificallyrecited examples and conditions, nor does the organization of suchexamples in the specification relate to a showing of the superiority andinferiority of the invention. Although one or more embodiments of thepresent invention have been described in detail, it should be understoodthat the various changes, substitutions, and alterations could be madehereto without departing from the spirit and scope of the invention.

What is claimed is:
 1. A non-transitory computer readable medium thatstores therein a virtual machine management program for causing acomputer to execute a process comprising: suspending a virtual machine,when an access to the virtual machine does not occur for a first time;resuming and, after a second time elapses, suspending the virtualmachine being suspended, even the access to the virtual machine does notoccur, so as to cause the virtual machine to perform a refreshingprocess; and resuming the virtual machine being suspended, when theaccess to the virtual machine occurs.
 2. The non-transitory computerreadable medium according to claim 1, wherein, in process of thesuspending, releasing a hardware allocated to the virtual machine beingsuspended.
 3. The non-transitory computer readable medium according toclaim 1, further comprising: acquiring operation information includingan independent output access by the virtual machine, and setting atiming of the resuming and suspending according to a timing of theindependent output access of the operation information.
 4. Thenon-transitory computer readable medium according to claim 3, whereinthe independent output access by the virtual machine includes an outputaccess by the virtual machine in while the access to the virtual machinedoes not occur.
 5. The non-transitory computer readable medium accordingto claim 4, wherein the independent output access by the virtual machineincludes an output access involved in a refresh operation includingupdate processing for a virus pattern or alive notification processing.6. The non-transitory computer readable medium according to claim 1,wherein, the second time is longer than a time for the refreshingprocess.
 7. The non-transitory computer readable medium according toclaim 1, wherein, in process of the resuming, when the resuming takesmore than a third time, causing a client terminal accessing the virtualmachine to display an access response screen for displayingaccess-processing-in-progress.
 8. The non-transitory computer readablemedium according to claim 1, wherein, in process of the resuming andsuspending, when an access to the virtual machine occurs during therefreshing process, causing the virtual machine in the refreshingprocess to execute response processing to the access.
 9. Thenon-transitory computer readable medium according to claim 1, wherein,in process of the resuming, temporarily holding the access to thevirtual machine being suspended and, after the process of the resumingthe virtual machine is completed, transmitting the held access to thevirtual machine being resumed.
 10. A virtual machine managementapparatus that manages a virtual machine generated in hardware,comprising: a suspending unit configured to suspend the virtual machine,when an access to the virtual machine does not occur for a first time; arefreshing unit configured to resume and, after a second time elapses,suspend the virtual machine being suspended, even the access to thevirtual machine being suspended does not occur, so as to cause thevirtual machine to perform a refreshing process; and a resuming unitconfigured to resume the virtual machine being suspended, when theaccess to the virtual machine being suspended occurs.
 11. The virtualmachine management apparatus according to claim 10, further comprising:an operation information acquiring unit configured to acquire operationinformation including an independent output access by the virtualmachine, and a setting unit configured to set a timing when therefreshing unit resumes and suspends the virtual machine beingsuspended, according to a timing of the independent output access of theoperation information.
 12. A cloud computing system comprising: avirtual machine generated in hardware including at least a server; and avirtual machine management apparatus that manages the virtual machine,wherein the virtual machine management apparatus includes: a suspendingunit configured to suspend the virtual machine, when an access to thevirtual machine does not occur for a first time; a refreshing unitconfigured to resume and, after a second time elapses, suspend thevirtual machine being suspended, even the access to the virtual machinebeing suspended does not occur, so as to cause the virtual machine toperform a refreshing process; and a resuming unit configured to resumethe virtual machine being suspended, when the access to the virtualmachine being suspended occurs.
 13. The cloud computing system accordingto claim 12, wherein the virtual machine management apparatus furtherincludes: an operation information acquiring unit configured to acquireoperation information including an independent output access by thevirtual machine, and a setting unit configured to set a timing when therefreshing unit resumes and suspends the virtual machine beingsuspended, according to a timing of the independent output access of theoperation information.
 14. A non-transitory computer readable mediumthat stores therein a virtual machine management program for causing acomputer to execute a process comprising: suspending a virtual machine,when an operation request to the virtual machine does not occur far afirst time; resuming and, after a second time elapses, suspending thevirtual machine being suspended, even the operation request to thevirtual machine does not occur, so as to cause the virtual machine toperform a refreshing process; and resuming the virtual machine beingsuspended, when the operation request to the virtual machine occurs.